Method for smart device network application infrastructure (SDNA)

ABSTRACT

The present invention discloses a novel method to implement a Smart Device Network Application Infrastructure (SDNA) that supports and facilitates the development, deployment and management of device networks and device network applications. The Smart Device Network Application infrastructure (SDNA) refers to an integrated processing platform that supports and facilitates the development, deployment and management of distributed applications based on device networks. It involves the concurrent execution of several processes that interact to provide support and resources for said applications.

BACKGROUND RELATED APPLICATIONS

[0001] The present invention uses the concepts of True DistributedControl, Global Addressing and Protocol Morphing of our co-pending U.S.patent applications. Also, the term “device group” refers to the term“device tissue or organ” as used in our co-pending Single-Cell ControlU.S. patent application.

BACKGROUND OF INVENTION

[0002] 1. Background Field of Invention

[0003] This invention relates to device network applications,specifically to an infrastructure platform that supports development,deployment and management of network applications based on smartdevices.

[0004] 2. Background Discussion of Prior Art

[0005] The Cambridge Dictionary of American English defines a “device”to be an object or machine invented to fulfill a particular purpose. Intechnical literature, several types and definitions of devices arementioned. The following are our definitions as used in the presentdisclosure.

[0006] In the present disclosure, the term “device” specifically refersto a unit comprising a combination of software and/or hardware thatpossesses configurable attributes and parameters that may uniquelyidentify and distinguish it from other units. The set of configurableattributes and parameters includes a program or application, whichdescribes the operation of the device under all functionalcircumstances.

[0007] Depending on the application, a device may be as simple as acontroller that opens an electric door when someone approaches it, or ascomplex as a composite controller that executes sensitive measurementswithin a petrochemical industrial process.

[0008] There are several types of devices, depending on theircharacteristics and operation:

[0009] Dumb device: refers to devices that lack intrinsic intelligenceand cannot communicate with other devices. Dumb devices includeconventional household appliances, electric lights, among others.

[0010] Intelligent Device: refers to devices that possess inherentintelligence, i.e., devices that have some processing power and arecapable of performing logic functions. Typical intelligent devicesinclude programmable microwave ovens, ABS brakes and traffic lights,among others.

[0011] Communication-enabled device: refers to devices capable oftransmitting information over a simple communication medium, such as aserial port. Communication-enabled devices include controllers inmaster/slave control architectures, Ademco IR detectors, etc.

[0012] Network-enabled device: refers to devices fully capable ofcommunicating with other devices across a network, such as personalcomputers. These are also called network-ready devices.

[0013] Smart device: refers to a device that is at once intelligent andnetwork-enabled.

[0014] Beyond defining a device, other definitions are relevant to thisdisclosure, including those of device networks and device networkapplications.

[0015] The term “device network” refers to a collection of devicesinterconnected in a networking fashion in which they can communicatewith one another to share information and resources. A device network isthe underlying physical structure that supports a device networkapplication, and its complexity, in general, depends on the complexityof the implemented application. A device network, if appropriatelydesigned as per the present invention, can support execution of multipleconcurrent applications, or execution of multiple instances of the sameapplication. The term “device network” differs from the term “devicegroup”. The term “device group” refers to the method of uniting severaldevices into a logical group called device “tissue” or “organ”, asdescribed in the method of single-cell control.

[0016] The term “device network application” refers to a balancedcombination of a software application and an underlying device networkinfrastructure. In a device network application, a software applicationmakes use of a physical device network to accomplish an overall task.Some applications may involve interaction with an end-user, while somemay not involve human interaction at all.

[0017] A home automation system illustrates a simple example of a devicenetwork application. It comprises a set of devices interconnected toform a device network (e.g., electric doors, electric lights, motiondetectors, air conditioners, temperature sensors, garage door opener,cloth washer and drier, microwave oven, and others). A home automationapplication controls all these devices to perform according to a setplan. For instance, a siren is activated when an alarmed electric dooris opened, electric lights are automatically switched on when you walkinto a room, or the garage door opens automatically as your carapproaches it.

[0018] A home automation system involves interaction with a user (i.e.,end-user), who can perform device activations (e.g., turn lights on/off)or can perform system configuration.

[0019] In recent years, there have been many efforts invested to developsmart device technology. The results, however, have been limited to manyspecific technologies that produce intelligent devices and network-readydevices (specially Internet-ready). Yet, no efforts have been puttowards creating a universal infrastructure that can at once support andfacilitate development, deployment and management of smart devicenetworks and smart device network applications.

[0020] Consequently, the present invention stands alone in its field asit fills an important void left by all other previous smartdevice-related inventions.

SUMMARY OF INVENTION

[0021] The present invention discloses a novel method to implement aSmart Device Network Application Infrastructure (SDNA) that supports andfacilitates the development, deployment and management of devicenetworks and device network applications.

[0022] Objects and Advantages

[0023] Accordingly, several objects and advantages of the presentinvention are:

[0024] a) To provide a comprehensive method for an integratedinfrastructure that encloses all fundamental tools and environments forthe development, deployment and management of device networkapplications;

[0025] b) To provide said method for an infrastructure in which devicenetwork applications may employ any combination of dumb,communications-enabled, intelligent, network-ready and smart devices;

[0026] c) To provide said method for an infrastructure that includesdevice network application development tools and environments sufficientfor the implementation of all solutions leading to rapid and effectivedesign and construction of full device network applications;

[0027] d) To provide said method for an infrastructure that includesdevice network application deployment tools and environments sufficientfor the implementation of all solutions leading to efficient andeffortless deployment of full device network applications;

[0028] e) To provide said method for an infrastructure that includesdevice network application management tools and environments sufficientfor the implementation of all solutions leading to competent andresourceful management of full device network applications;

[0029] f) To provide said method for an infrastructure in which alltools and environments for development, deployment and management ofdevice network applications can be universally and fully utilized inrelation to all device network applications and in which no specialapplication-specific tools and environments (other than those providedwithin the infrastructure) may be required;

[0030] g) To provide said method for an infrastructure that isindependent of the networking technology used in building the underlyingdevice network; h) To provide said method for an infrastructure that isindependent of the technology used to build the underlying devices thatform the device network, whether smart, dumb or other;

[0031] i) To provide said method for an infrastructure which isapplicable to numerous device network application embodiments and whosepreferred embodiment relates to the development, deployment andmanagement of automation-related smart device network applications, suchas home automation, industrial automation, transportation automation,among many others.

[0032] Other objects and advantages of this invention will becomeapparent from a consideration of the ensuing description and drawings.

BRIEF DESCRIPTION OF DRAWINGS

[0033]FIG. 1 shows a condensed view of the present invention”sarchitecture containing only its fundamental modules.

[0034]FIG. 2A illustrates details of the Management Services module.

[0035]FIG. 2B illustrates details of the Application Services module.

[0036]FIG. 2C illustrates details of the Smart Network Services module.

[0037]FIG. 2D illustrates details of the Database Services module.

[0038]FIG. 3 shows the detailed view of the preferred embodiment of thearchitecture.

[0039]FIG. 4 shows the overall utilization of the architecture.

DETAILED DESCRIPTION

[0040] The method herein disclosed will now be described by referring tothe accompanying drawings that illustrate preferred embodiment of theinvention.

[0041] The Smart Device Network Application infrastructure (SDNA) refersto an integrated processing platform that supports and facilitates thedevelopment, deployment and management of distributed applications basedon device networks. It involves the concurrent execution of severalprocesses that interact to provide support and resources for saidapplications,

[0042] SDNA is an integrated infrastructure because it incorporates intoa single platform the complete lifecycle of device network applications,from inception and design, to construction and deployment, and finallyto management, including application upgrade.

[0043] SDNA may operate over other basic technologies. Yet, itsoperation is not coupled to any specific (e.g., proprietary) technology.For instance, a device network is a fundamental requirement for theoperation of SDNA, as SDNA device network applications operate ondevices and device networks. However, SDNA does not require that aspecific networking technology be used. SDNA is capable of interactingwith the underlying device network, regardless of the network type,medium or protocol used.

[0044] Thus, SDNA is said to be independent of the underlying networkingtechnology. In addition, a database engine is a fundamental requirementfor the operation of SDNA, as SDNA internal operation and SDNAapplications make use of a database engine to store essential operation,configuration and other data. However, SDNA does not require that aspecific database technology be used. SDNA is capable of interactingwith the underlying database engine, regardless of type, brand or otherintrinsic aspects of the database. Thus, SDNA is said to be independentof the underlying database technology.

[0045]FIG. 1 illustrates a condensed view of the SDNA architecture,showing its main processing modules, namely, Application Services (AS),Management Services (MS), Database Services (DBS) and Smart NetworkServices (SNS). In brief terms, the Application Services are theprocesses in charge of the creation of applications, the communicationsbetween different concurrent applications and deployment ofapplications. The Management Services implement general infrastructuremanagement, including coordination and transactional management,resource and application management. The Database Services implementefficient data storage, access and manipulation functionality. The SmartNetwork Services implement SDNA'S networking capabilities, including allinter-device communication and messaging functionality, among othersfunctions.

[0046] Each of these processing modules is explained in detail next.

[0047] SDNA Management Services: Management Services implements SDNA'Score functionality. It is here that overall platform management isperformed, including device network and application management. It alsoserves as an intelligent bridge between all other SDNA Services modules.It comprises the following components, as shown in FIG. 2A:

[0048] Coordination and Transactional Services

[0049] Entity Management Services

[0050] Resource Control Repository

[0051] Application Management Services

[0052] Logging Management Services

[0053] Data Management Services

[0054] Customer Management Services

[0055] Each of these is described in detailed next.

[0056] Coordination and Transactional Services: Coordination andTransactional Services (CTS) form the intelligent brain of SDNA. Itsfunctions include operation as arbiter in the interaction of any two ormore SDNA components, such as the interface between the DatabaseServices and the Smart Network Services, etc.

[0057] In addition, CTS implement and support SDNA transactions. An SDNAtransaction refers to a coherent set of operations carried out withinthe SDNA infrastructure. Said set of operations is performed as anundividable unit. The performing of an SDNA transaction is consideredsuccessful if and only if all operations involved in the transaction arecarried out successfully. A detailed registry of all successful SDNAtransactions and associated operations is stored so that they may bereverted if necessary (i.e., if one operation fails, all othertransaction operations already carried out can be reverted).AdditionalCTS functions include synchronization between concurrent SDNA processes.Processes include any SDNA management service, applications, developmenttools, or other. Finally, CTS handles SDNA events, such as devicenetwork events, application events, user events, database events, andothers.

[0058] SDNA Entity Management Services: An SDNA Entity refers to alogical abstraction that exists within the SDNA environment, havinguniquely identifying attributes, serving a specific purpose and beingcapable of interacting with other similar abstractions. An SDNA entitymay refer to a physical device, such as dumb and smart devices, or avirtual device, such as a user. Within SDNA, for instance, every user orphysical device may be treated as an entity having configurableproperties. The SDNA entity corresponding to a user may includeproperties such as name and address. The SDNA entity corresponding to aphysical device may include properties such as device operation states(e.g., ON, OFF, Standby), parameters, etc.

[0059] Every SDNA entity exposes an interface of inputs and outputsthrough which it can communicate with everything outside of itself(e.g., other SDNA entities). Its set of inputs and outputs is calledSDNA Entity Interface. Using an entity”s interface inputs, itsproperties may be reviewed and/or modified. An SDNA Entity may have morethan one interface.

[0060] Further, coherent relationships between SDNA entities can bedefined by specifying how two or more SDNA entities can connect to eachother. By wisely defining relationships between basic SDNA entities,composite SDNA entities may be created. For instance, if an entity X”soutputs are connected to another entity Y”s inputs, the combination ofentities X and Y may behave as a unitary entity having entity X”s inputsas inputs and entity Y”s outputs as outputs.

[0061] An exemplary composite SDNA entity is a “smart door”. A smartdoor consists of the logical union of several basic physical devices,e.g., an infrared motion detector, an electric door and an electriclock, which themselves are basic SDNA entities. A smart door may thus betreated as a single device that, when approached, opens itselfautomatically.

[0062] The advantage of performing management on a basis of SDNAentities is that management of all objects within the SDNAinfrastructure may be carried out as a single process, significantlysimplifying system maintenance. SDNA Entity Manager controls all aspectsof SDNA entities, including user management, device and device groupmanagement and resource ownership management.

[0063] In applications that involve end-users (e.g., home owners in ahome automation application), user management involves end-useractivation and deactivation, and application customization. End-useractivation and deactivation employs user-related data that permitsenabling and disabling of an application. This process may operateautomatically for some applications and semi-automatically forapplications requiring user interaction.

[0064] Device and device group management includes enabling anddisabling of all devices in SDNA'S device networks. In addition, newdevices can be detected as they are introduced into the device network,and may be registered and configured accordingly without need of humaninteraction.

[0065] Device and device group management implements a robust structureof support that is used in case of device failure or when systemmaintenance is necessary. All devices contained in SDNA'S underlyingdevice network are interconnected into the same physical network. At ahigher level, however, devices may be grouped into logical networks towhich only end-users with specific control privileges may have access.Control privileges are entity properties assigned to users that allowthem to perform specific application operations or access specific SDNAresources.

[0066] Each end-user of every SDNA application can control, locally orremotely, any device present on his or her own logical network, andcannot control or monitor logical networks that belong to otherend-users. The privilege scheme is strictly enforced and verified atdevice level.

[0067] Resource Control Repository: SDNA comprises a Resource ControlRepository (RCR). The RCR contains detailed information about everyresource in the SDNA infrastructure, including whether it is being used,how it is being used and what process or application is using it, amongothers. The Coordination and Transactional Services, the ApplicationManagement Services and other parts of SDNA Management Services use thisinformation records to handle distribution and allocation of resourcesto applications and other processes that may need them.

[0068] SDNA Application Management Services: SDNA Application ManagementServices (AMS) support the concurrent execution of multiple applicationsover one single device network through SDNA Application Manager. SDNAAMS controls application activation and deactivation, and handles allapplication upgrades and new end-user applications created by thirdparties or other. In addition, AMS (in conjunction with the RCR above)controls what system resources are made available to each application.

[0069] All embedded applications residing at operative devices on thedevice network can be modified dynamically while they are online. Thisallows applications to be directly downloaded into specific networkdevices from SDNA'S application console across the device network. Nodevice or network downtime is required.

[0070] Data Management Services: SDNA Data Management Services (DMS)comprise two components, namely, data transformation services and dataintegration services. These two parts implement the module in charge ofhandling data preprocessing for back-office functions anddomain-specific application software. Its functions include integrationwith other systems. SDNA'S data, originating from network event loggingor other sources, can be translated into data structures used by othersystems and subsequently exported. Similarly, SDNA can import andtranslate data originating in foreign data systems into SDNA'S internaldata structures.

[0071] Through its data transformation and integration services, SDNAalso offers support for any type of devices. Data originating in foreigndevices can be translated into SDNA-readable data structures. SDNA'Sdata structures can be translated into foreign device-readable datastructures and fed to the corresponding foreign devices.

[0072] Finally, SDNA offers several supported modes for construction ofinterfaces to interact with end-users, such as HTTP, WAP, XML andothers.

[0073] Log Services Management: The occurrence of a single transactionor event in any SDNA layer, including device network events and others,triggers the generation of an associated record indicating the nature ofthe transaction or event, the application associated with thetransaction and the devices and users involved in the transaction. Thisincludes both successful and unsuccessful transactions.

[0074] SDNA implements a semantic data filter generator that permits thecreation of a comprehensive collection of data filters. All data loggedand stored in the Smartmatic Database may be intelligently filtered toproduce reports or create interfaces with other enterprise systems, suchas ERPs, statistical software and others. After establishing datasemantics, the physical format may be selected and an output produced.

[0075] Customer Management Services: SDNA implements complete servicesthat specifically operate as interfaces between SDNA'S internal datastructures and a service provider”s existing customer care and billingsystems. SDNA may be configured to automatically detect specificrelevant transactions (e.g., related to resource usage, etc), register acomplete record including the associated transaction data, andpreprocess such data to produce information ready for input to customercare, billing and invoicing systems.

[0076] SDNA Application Services: Shown in FIG. 2B, SDNA ApplicationServices comprise the main support for SDNA applications and the entrypoint of applications into SDNA.

[0077] There are three fundamental components, namely, IntegrationServices, Deployment Services and Interface Gateways.

[0078] Deployment Services: Deployment Services (DS) provide tools forremote installation, deinstallation, configuration, deployment andupdating (both corrective updating and version updating) of an SDNAapplication. DS also verifies that an application that is to be deployedis concordant with the SDNA infrastructure guidelines. DeploymentServices are used by SDNA Entity Management Services to configure theapplication to be deployed. Each application to be deployed must bepackaged in a specific manner so that Deployment Services can obtainspecific deployment parameters. Deployment parameters include startdeployment time, end deployment time, deployment mode, among others.Application packaging also includes a detailed description of all SDNAentities used and made available by the application.

[0079] The Deployment Manager coordinates that all underlying networkdevices required for the use of the application are operative and ready.Deployment Services allow deployment, updating or upgrading of anapplication while a device is online, thus, requiring no device ordevice network downtime.

[0080] Integration Services: Integration Services are processes thatconstruct, monitor and provide tools for the configuration ofcommunication channels among SDNA applications. These processes handleinter-application messaging, information transfer, resource sharing, andhigh-level application interrupts, signals and semaphors. Said channelsmay be shared buffers, pipes or other, and enable both synchronous andasynchronous communications. Interaction among SDNA applications andnon-SDNA applications is also supported.

[0081] Gateway Interface Services: Gateway Interface Services providesupport for applications” presentation layers, such as applications thatinvolve interaction with end-users. Gateway Interfaces operate in twomodes, namely, server mode and translation mode. Under the server mode,SDNA listens to user-client requests, which may be done in a specificserver-client protocol (such as HTTP), processes the requests, andgenerates replies based on the same protocol. Under the translationmode, user requests are translated into SDNA-specific rules, and thenprocessed. Replies are accordingly translated back from SDNA-specificlanguage into the client-specific protocol. In addition, applicationsmay encapsulate SDNA-specific requests inside conventional protocols.SDNA registers requests, extracts SDNA-specific instructions, processesthem, and encapsulates an SDNA reply into a protocol-specific reply.

[0082] SDNA Smart Network Services: Shown on FIG. 2C, SDNA Smart NetworkServices implement SDNA'S networking capabilities, including allinter-device communication and messaging functionality. The SmartNetwork Services implement basic network services, and the GlobalAddressing and Protocol Morphing methods, which support secure andreliable communications across hybrid networks of incompatible networkprotocols and/or media.

[0083] Basic Network Services: Basic Network Services implement thefundamental communication processes of SDNA, including one-to-onemessaging among devices, including acknowledged and unacknowledgedmessage delivery, and one-to-many device messaging, including multicastand broadcasts. All network services required that are not supported bythe underlying network technology are emulated using the ProtocolMorphing technology (see below).

[0084] Global Addressing: Global Addressing constitutes a method ofsource routing that implements device-to-device communications acrosshybrid device networks. The method is based in packet communications inwhich packets are structured so that they can be readily convertedbetween communications protocols, and in which packets enclose routinginformation and parameters.

[0085] Protocol Morphing: Protocol Morphing represents the lowest levelof SDNA'S network services. If the underlying network technology doesnot support all network services that are required for SDNA'S globaladdressing and all other network functionalities, protocol morphing canimplement them. That is, protocol morphing constitutes a method ofemulation of basic network services, such as point-to-point messaging,multicast and broadcast messaging, and both acknowledged andunacknowledged packet delivery. These services are emulated only if theyare not supported by the underlying network technology.

[0086] Device Functionality Emulation Services: In some applications, itmay be desirable to add dumb or otherwise limited devices that are notalready intelligent or network-ready to the device network. Accordingly,SDNA provides support services to emulate the desired devicefunctionality that permit transparent device integration. The result isa fully integrated, hybrid network comprising smart and dumb devicesalike.

[0087] SDNA Database Services: Shown on FIG. 2D, SDNA Database Servicesimplement all functionality required for efficient data storage, accessand manipulation of all other SDNA modules.

[0088] SDNA Database The SDNA Database, also known as SDNA Data Model,is a robust database back-end that stores all data related to SDNAoperation (including configuration data, service- and user-related data,etc) and to applications executing over SDNA.

[0089] Query and Data Manipulation Services: Beyond the operation of thedevice network and resource management, SDNA Database Services alsoprovide tools to execute direct data queries and modifications to theSDNA Database. This way, low-level data operations can be performed byan administrator with in-depth knowledge of the workings of the SDNAplatform.

[0090] Abstraction Support: The Database Services allow the generationof abstract data objects derived from a logical combination of simplerdata objects. These constitute the data structures and routinesunderlying SDNA entities.

[0091] Clustering, Redundancy and Backup Services: Clustering,Redundancy and Backup Services are designed to create an extra layer ofdata protection to guarantee data integrity and availability in case ofdatabase engine failure or other artifacts.

[0092] Operation of Invention

[0093] The operation of the method herein disclosed will now bedescribed by referring to the accompanying drawings that illustratepreferred embodiment of the invention. FIG. 3 shows the detailedconfiguration of the preferred embodiment of the present method. Notethat the infrastructure illustrated in FIG. 1 is completely embeddedinto the core of FIG. 3. Furthermore, FIG. 3 adds several blocks to thefundamental infrastructure. These will be described next.

[0094] Application Services: The basic functioning of SDNA ApplicationServices has been described earlier. Beyond the details illustrated inFIG. 1, FIG. 3 shows two additional features, namely, blocks labeledApp1 to AppN and DT1 to DTQ. Blocks App1 to AppN (i.e., App1, App2, App3up to AppN, for arbitrary N) refer to all applications (1 through N)that are supported by the SDNA infrastructure. As stated above,Application Services are the entry points of applications into the SDNA.SDNA applications comprise a presentation interface that may be exposedover a variety of media, including Ethernet, Power Lines or Wirelessinterfaces. Blocks DT1 to DTQ (i.e., DT1, DT2, DT3 up to DTQ, forarbitrary Q) refer to all development tools (1 through Q) that have beenintegrated into SDNA. Application Development tools implement a completeApplication Building Environment that provides all software librariesand tools required to develop complete distributed device networkapplications for the SDNA platform, such as Software Development Kits,Application Program Interfaces (APIs), and visual tools for softwaredevelopment.

[0095] Using these tools, developers and integrators may buildapplications to monitor, control, manage and automate any physicaldevices or logical combination of devices connected to the devicenetwork. Applications may be as simple as point-to-point deviceapplications, and as complex as true distributed control solutionscomprising an advanced distributed logic framework based on the paradigmof True Distributed Control.

[0096] SDKs and APIs offer an extensive set of software components,libraries, documentation and guidelines for rapid development ofapplications over the SDNA Infrastructure. They support full interactionwith underlying SDNA Components, including event logging, data importand export services, data translation services, and many others.

[0097] The visual tools for software development are tools for thecreation of graphical user interfaces and interface gateways, based onthe latest presentation technologies. These interfaces constitute anSDNA application's presentation layer. Examples of presentationtechnologies are HTML/DHTML, JavaScript, ASP, JSP, WAP and XML.

[0098] Management Services: The basic functioning of SDNA ManagementServices has been described earlier. Beyond the details featured in FIG.1, FIG. 3 illustrates one additional feature, namely, blocks MT1 to MTP.

[0099] Blocks MT1 to MTP (i.e., MT1, MT2, MT3 up to MTP, for arbitraryP) refer to all management tools (1 through P) that are supported by theSDNA infrastructure. Management tools include any operation managers,such as the SDNA Entity Manager, that interact with SDNA internalprocesses (i.e., SDNA Entity Management Services). SDNA Management toolsenter the SDNA infrastructure through Coordination and TransactionalServices.

[0100] Database Services: The basic functioning of SDNA DatabaseServices has been described above. Beyond the details shown on FIG. 1,FIG. 3 illustrates two additional features, namely, DB Drivers and DB1to DBM.

[0101] The Database Services module connects to Database Drivers (DBDrivers). Database Drivers translate SDNA's internal data handlingroutines and structures into database engine-specific language. Thisallows SDNA to simultaneously interface with several databases usingdifferent database engines. The Database Services enable SDNA to operateindependently of the underlying database technology. Blocks DB1 to DBM(i.e., DB1, DB2, DB3, up to DBM, for arbitrary M) refer to allunderlying database engines being used by the SDNA infrastructure.

[0102] Smart Network Services: The functioning of the SDNA Smart Networkservices has been described above. Beyond the details shown on FIG. 1,FIG. 3 illustrates an additional feature, namely, NTGs. NTG stands forNetwork Translation Gateway. SDNA supports the use of several NTGs.Smart Network Services connect to Network Translation Gateways, whichtranslate SDNA's internal communication data structures into networkprotocol and medium-specific language for transmission. Smart NetworkServices effectively enable SDNA to operate independently of theunderlying networking technology. Supported network protocols includeTCP/IP, LonTalk, etc. Support network media include Ethernet, ATM,Wireless (e.g., CPDP, Radio Frequency) and Power Lines.

[0103]FIG. 4 illustrates an exemplary application lifecycle with SDNA.It includes three steps: Application Design and Construction,Application Deployment and Platform Management. First, using SDNAApplication Services and development tools, an application is designedand constructed. This also applies to application upgrades, updates,etc.

[0104] Second, using SDNA Deployment Services, the new application isdeployed onto the device network. This may involve downloading specificconfiguration or program information into all or some devices on thedevice network.

[0105] Finally, all applications are managed using SDNA ManagementTools. Using SDNA Management Tools the entire platform over whichapplications exist can be managed. As all applications existing overSDNA follow the same guidelines, all can be managed using the sametools.

[0106] Conclusion, Ramifications and Scope of Invention

[0107] Thus, the reader will see that the presented method of integratedsmart device network application infrastructure provides a comprehensiveenvironment in which distributed device network applications, regardlessof complexity, can be developed, deployed and managed. Saidinfrastructure is not bound to any specific proprietary technologies andcan operate over any existing network technology and use any existingtechnology for smart devices and smart device networks.

[0108] While our above description contains many details, these shouldnot be construed as limitations to the scope of the invention, butrather as an exemplification of one preferred embodiment thereof.Obviously, modifications and alterations will occur to others upon areading and understanding of this specification.

[0109] For example, other specialized service processes can be addedonto every fundamental processing module shown in FIG. 1. Thesespecialized services can derive from existing services or can be newaltogether.

[0110] In addition, some special SDNA uses are evident. This is the casefor companies providing network services (i.e., network serviceproviders). SDNA can be easily used as the main infrastructure on whichall services (e.g., automation-related services and applications) can bedeveloped, deployed and offered to all customers or other users.

[0111] The description above is intended, however, to include all suchmodifications and alterations insofar as they come within the scope ofthe appended claims or the equivalents thereof.

What is claimed is:
 1. A method to implement a Smart Device NetworkApplication Infrastructure that supports and facilitates thedevelopment, deployment and management of device networks and devicenetwork applications, the method comprising the following steps: Havinga SDNA processing platform with an Application Services module, aManagement Services module, a Database Services module, and a SmartNetwork Services module.
 2. A method as in claim 1 in which saidManagement Service module implements the platform's core functionalityand comprises the following components: a) Coordination andTransactional Services which functions as an arbiter in the interactionof any two or more SDNA platform components, transaction support,synchronizing between concurrent SDNA platform processes, such as SDNAplatform management service, applications, or development tools andhandling SDNA platform events, such as device network events,application events, user events, and database events; b) EntityManagement Services which controls all aspects of SDNA platform entitieswhich are a logical abstractions within the SDNA platform, includinguser management, device and device group management and resourceownership management; c) Resource Control Repository which containsdetailed information about every resource in the SDNA platforminfrastructure, including whether it is being used, how it is being usedand what process or application is using it; d) Application ManagementServices which controls application activation and deactivation, andhandles all application upgrades and it controls what system resourcesare made available to each application; e) Logging Management Serviceswhich register all events and transactions occurring in any SDNA layer,and implements a semantic data filter generator that permits thecreation of a comprehensive collection of data filters which can be usedto produce reports or interfaces to other systems; f) Data ManagementServices which is comprised of data transformation services and dataintegration services; and g) Customer Management Services whichimplements services that operate as interfaces between SDNA platform'sinternal data structures and other systems.
 3. A method as in claim 1 inwhich said Application Service comprises the main support for SDNAplatform applications and the entry point of applications into said SDNAplatform and comprises the following components: a) Deployment Serviceswhich provide tools for remote installation, deinstallation,configuration, deployment and updating of an application; b) IntegrationServices which construct, monitor and provide tools for theconfiguration of communication channels among applications; and c)Gateway Interface Services which provides support for an applications”presentation layers.
 4. A method as in claim 1 in which said SmartNetwork Services implement SDNA platform's networking capabilities,including all inter-device communication and messaging functionality andcomprises the following components: a) Basic Network Services whichimplements the fundamental communication processes of SDNA platform; b)Global Addressing which constitutes a method of source routing thatimplements device-to-device communications across hybrid device networkbased on packet communications; c) Protocol Morphing which is a methodof emulation of basic network services emulating all basic networkservices that are not implemented by the underlying network technology;and d) Device Functionality Emulation Services which provides supportservices to emulate the desired device functionality.
 5. A method as inclaim 1 in which said Database Services implements all functionalityrequired for efficient data storage, access and manipulation andcomprises the following components: a) The SDNA Database which is adatabase that stores all data related to SDNA platform operation; b)Query and Data Manipulation Services which are tools to execute directdata queries and modifications to the SDNA Database; c) AbstractionSupport which allows the generation of abstract data objects derivedfrom a logical combination of simpler data objects; and d) Clustering,Redundancy and Backup Services which creates an extra layer of dataprotection to guarantee data integrity and availability in case ofdatabase engine failure.
 6. A computer program wherein the basecomponent has interfaces and the program code for: Having a SDNAprocessing platform with an Application Services module, a ManagementServices module, a Database Services module, and a Smart NetworkServices module.
 7. A computer program as in claim 6 wherein the basecomponent has interfaces and the program code for said ManagementService module to implement the platform's core functionality andcomprises the following components: a) Coordination and TransactionalServices which functions as an arbiter in the interaction of any two ormore SDNA platform components, transaction support, synchronizingbetween concurrent SDNA platform processes, such as SDNA platformmanagement service, applications, or development tools and handling SDNAplatform events, such as device network events, application events, userevents, and database events; b) Entity Management Services whichcontrols all aspects of SDNA platform entities which are a logicalabstractions within the SDNA platform, including user management, deviceand device group management and resource ownership management; c)Resource Control Repository which contains detailed information aboutevery resource in the SDNA platform infrastructure, including whether itis being used, how it is being used and what process or application isusing it; d) Application Management Services which controls applicationactivation and deactivation, and handles all application upgrades and itcontrols what system resources are made available to each application;e) Logging Management Services which register all events andtransactions occurring in any SDNA layer, and implements a semantic datafilter generator that permits the creation of a comprehensive collectionof data filters which can be used to produce reports or interfaces toother systems; f) Data Management Services which is comprised of datatransformation services and data integration services; and g) CustomerManagement Services which implements services that operate as interfacesbetween SDNA platform's internal data structures and other systems.
 8. Acomputer program as in claim 6 wherein the base component has interfacesand the program code for said Application Service to comprise the mainsupport for SDNA platform applications and the entry point ofapplications into said SDNA platform and comprises the followingcomponents: a) Deployment Services which provide tools for remoteinstallation, deinstallation, configuration, deployment and updating ofan application; b) Integration Services which construct, monitor andprovide tools for the configuration of communication channels amongapplications; and c) Gateway Interface Services which provides supportfor an applications” presentation layers.
 9. A computer program as inclaim 6 wherein the base component has interfaces and the program codefor said Smart Network Services to implement SDNA platform's networkingcapabilities, including all inter-device communication and messagingfunctionality and comprises the following components: a) Basic NetworkServices which implements the fundamental communication processes ofSDNA platform; b) Global Addressing which constitutes a method of sourcerouting that implements device-to-device communications across hybriddevice network based on packet communications; c) Protocol Morphingwhich is a method of emulation of basic network services emulating allbasic network services that are not implemented by the underlyingnetwork technology; and d) Device Functionality Emulation Services whichprovides support services to emulate the desired device functionality.10. A computer program as in claim 6 wherein the base component hasinterfaces and the program code for said Database Services to implementall functionality required for efficient data storage, access andmanipulation and comprises the following components: a) The SDNADatabase which is a database that stores all data related to SDNAplatform operation; b) Query and Data Manipulation Services which aretools to execute direct data queries and modifications to the SDNADatabase; c) Abstraction Support which allows the generation of abstractdata objects derived from a logical combination of simpler data objects;and d) Clustering, Redundancy and Backup Services which creates an extralayer of data protection to guarantee data integrity and availability incase of database engine failure.